/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package pe.edu.pucp.Util.Reportclass;

import java.util.ArrayList;
import java.util.List;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRField;
import pe.edu.pucp.Modelo.Log;

/**
 *
 * @author jorge
 */
public class AuditoriaDataSource implements JRDataSource{
    private List<Log> lstLog = new ArrayList<>();
    private int ind = -1;
    
    public void addLog(Log lg) { lstLog.add(lg); } 
    
    @Override
    public boolean next() throws JRException { return ++ind < lstLog.size(); }   
    
    @Override
    public Object getFieldValue(JRField jrf) throws JRException {
       Object valor = null;
        switch (jrf.getName()) {
            case "Usuario":
                valor = lstLog.get(ind).getUsuario().getNombre()+" "+lstLog.get(ind).getUsuario().getAppaterno()+" "+lstLog.get(ind).getUsuario().getApmaterno();
                break;
            case "Accion":
                valor = lstLog.get(ind).getActividad().getDescripcion();
                break;
            case "Objeto":
                valor = lstLog.get(ind).getObjeto().getDescripcion();
                break;
            case "Fecha":
                valor = lstLog.get(ind).getFechareg();
                break;                                                                                            
            case "Descripcion":
                valor = lstLog.get(ind).getDescripcion();
                break;                                                                
        }
        return valor;
    }
    
       
}
